"""
安装
    pip install bs4 -i 清华镜像源
"""
import csv

import requests
from bs4 import BeautifulSoup

from utils import os_utils

# 1、拿到页面源代码。
# 2、使用 bs4 进行解析，拿到数据。

url = 'https://www.sina.com.cn'
with requests.get(url) as response:
    response.encoding = 'utf-8'
    # print(response.text)
    # 解析数据
    # 1、把页面源代码交给 BeautifulSoup 进行处理，生成 bs 对象。
    beautiful_soup = BeautifulSoup(response.text, 'html.parser')  # 指定 html 解析器。
    # 2、从 bs 对象中查找数据。
    # find(标签, 属性=值)
    # find_all(标签, 属性=值)
    # result = beautiful_soup.find('ul', class_='list-a news_top')  # class是 python 的关键字，所以用 class_。
    result = beautiful_soup.find('ul', attrs={'class': 'list-a news_top'})  # 此种写法可以避免 class 名称冲突的问题。
    # print(result)
    result = result.find_all('li')[4:]
    os_utils.remove('sina.csv')
    with open('sina.csv', 'a', encoding='utf-8') as f:
        writer = csv.writer(f)
        for i in result:
            # print(i)
            # print(i.find('a').text)
            a = i.find('a')
            writer.writerow([a.get('href').strip(), a.text])